package com.xyht.sca_s.student_manage_system.modules.enrollmentManagement.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.xyht.sca_s.student_manage_system.common.commonReturn.ResponseResult;
import com.xyht.sca_s.student_manage_system.modules.enrollmentManagement.entity.SmsEnrollmentManagementStudentInfo;
import com.xyht.sca_s.student_manage_system.modules.enrollmentManagement.entity.req.SmsEnrollmentManagementStudentInfoBatchReq;
import com.xyht.sca_s.student_manage_system.modules.enrollmentManagement.entity.req.SmsEnrollmentManagementStudentInfoExportReq;
import com.xyht.sca_s.student_manage_system.modules.enrollmentManagement.entity.req.SmsEnrollmentManagementStudentInfoReq;

import javax.servlet.http.HttpServletResponse;
import java.util.concurrent.Future;

/**
 * <p>
 * 招生管理学生信息 服务类
 * </p>
 *
 * @author XYHT
 * @since 2024-01-15
 */
public interface SmsEnrollmentManagementStudentInfoService extends IService<SmsEnrollmentManagementStudentInfo> {
        //用户报名
        ResponseResult addEnrollmentManagementStudentInfo(SmsEnrollmentManagementStudentInfoReq studentInfoReq);
        //批量导入学生
        Future<ResponseResult> batchEnrollmentManagementStudentInfo(SmsEnrollmentManagementStudentInfoBatchReq studentInfoBatchReq,String user_id);
        ResponseResult deleteEnrollmentManagementStudentInfo(SmsEnrollmentManagementStudentInfoReq studentInfoReq);
        ResponseResult updateEnrollmentManagementStudentInfo(SmsEnrollmentManagementStudentInfoReq studentInfoReq);
        ResponseResult getEnrollmentManagementStudentInfoList(String searchStr,Integer signMethod,String enrollmentTeacherId,
                                                              String collegeId,String majorId,String returnVisitTeacherId,
                                                              String sex,Integer isCancel,String taskId,Integer enrollmentType,
                                                              Integer singleOrUnifiedRecruitment,
                                                              Integer pageNum,Integer pageSize);
        ResponseResult getEnrollmentManagementStudentInfoDetail(String id);

        ResponseResult cancelStudentInfo(SmsEnrollmentManagementStudentInfoReq studentInfoReq);
        Future<ResponseResult> exportEnrollmentManagementStudentInfoList(SmsEnrollmentManagementStudentInfoExportReq req, HttpServletResponse response);
}
